<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Jetson Inference: glCamera Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="NVLogo_2D.jpg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Jetson Inference
   </div>
   <div id="projectbrief">DNN Vision Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classglCamera.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classglCamera-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">glCamera Class Reference<div class="ingroups"><a class="el" href="group__util.html">Utilities Library (jetson-utils)</a> &raquo; <a class="el" href="group__OpenGL.html">OpenGL</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>OpenGL perspective camera supporting Look-At, Yaw/Pitch/Roll, and Ortho modes.  
 <a href="classglCamera.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="glCamera_8h_source.html">glCamera.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a29491e624fc3c4bd85def74db643f273"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a> { <a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273a8745252e4ff0a3a08635c0f37a71e806">LookAt</a>, 
<a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273a8ea08fddd9bed660854bb9e6942a75c0">YawPitchRoll</a>, 
<a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273aa71515b38b05be5b8baa702c27da3f1f">Ortho</a>
 }<tr class="memdesc:a29491e624fc3c4bd85def74db643f273"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enum specifying the camera mode.  <a href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a29491e624fc3c4bd85def74db643f273"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4f5818f0d43ab3d97a316d4f5834fb63"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a4f5818f0d43ab3d97a316d4f5834fb63">~glCamera</a> ()</td></tr>
<tr class="memdesc:a4f5818f0d43ab3d97a316d4f5834fb63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free the camera.  <a href="#a4f5818f0d43ab3d97a316d4f5834fb63">More...</a><br /></td></tr>
<tr class="separator:a4f5818f0d43ab3d97a316d4f5834fb63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71bf818dcda3515efe0632ed3144882e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a71bf818dcda3515efe0632ed3144882e">Activate</a> ()</td></tr>
<tr class="memdesc:a71bf818dcda3515efe0632ed3144882e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Activate GL_PROJECTION and GL_MODELVIEW matrices.  <a href="#a71bf818dcda3515efe0632ed3144882e">More...</a><br /></td></tr>
<tr class="separator:a71bf818dcda3515efe0632ed3144882e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45083bf2dbd5cde15b36612a1a20d10c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a45083bf2dbd5cde15b36612a1a20d10c">Activate</a> (<a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a> mode)</td></tr>
<tr class="memdesc:a45083bf2dbd5cde15b36612a1a20d10c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Activate GL_PROJECTION and GL_MODELVIEW matrices.  <a href="#a45083bf2dbd5cde15b36612a1a20d10c">More...</a><br /></td></tr>
<tr class="separator:a45083bf2dbd5cde15b36612a1a20d10c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57ff1e828c714a95750cd89c167e5d6b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a57ff1e828c714a95750cd89c167e5d6b">Deactivate</a> ()</td></tr>
<tr class="memdesc:a57ff1e828c714a95750cd89c167e5d6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore previous GL_PROJECTION and GL_MODELVIEW matrices.  <a href="#a57ff1e828c714a95750cd89c167e5d6b">More...</a><br /></td></tr>
<tr class="separator:a57ff1e828c714a95750cd89c167e5d6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8ab4555df063460fba8876dadd4062e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#ac8ab4555df063460fba8876dadd4062e">GetCameraMode</a> () const</td></tr>
<tr class="memdesc:ac8ab4555df063460fba8876dadd4062e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the camera mode.  <a href="#ac8ab4555df063460fba8876dadd4062e">More...</a><br /></td></tr>
<tr class="separator:ac8ab4555df063460fba8876dadd4062e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a347c1ccc0ad3315d4da0702a2faf09f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a347c1ccc0ad3315d4da0702a2faf09f6">SetCameraMode</a> (<a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a> mode)</td></tr>
<tr class="memdesc:a347c1ccc0ad3315d4da0702a2faf09f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the camera mode.  <a href="#a347c1ccc0ad3315d4da0702a2faf09f6">More...</a><br /></td></tr>
<tr class="separator:a347c1ccc0ad3315d4da0702a2faf09f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af47b7686cf77efa848eb434cfa3fd321"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#af47b7686cf77efa848eb434cfa3fd321">SetFOV</a> (float fov)</td></tr>
<tr class="memdesc:af47b7686cf77efa848eb434cfa3fd321"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the field of view (FOV), in degrees.  <a href="#af47b7686cf77efa848eb434cfa3fd321">More...</a><br /></td></tr>
<tr class="separator:af47b7686cf77efa848eb434cfa3fd321"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a852623aaf193398d25db0a0e9a4dc629"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a852623aaf193398d25db0a0e9a4dc629">SetClippingPlane</a> (float near, float far)</td></tr>
<tr class="memdesc:a852623aaf193398d25db0a0e9a4dc629"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the near/far z-clipping plane.  <a href="#a852623aaf193398d25db0a0e9a4dc629">More...</a><br /></td></tr>
<tr class="separator:a852623aaf193398d25db0a0e9a4dc629"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a735b9285463eed8a02b8b902b32a07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a3a735b9285463eed8a02b8b902b32a07">SetNear</a> (float near)</td></tr>
<tr class="memdesc:a3a735b9285463eed8a02b8b902b32a07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the distance to the near clipping plane.  <a href="#a3a735b9285463eed8a02b8b902b32a07">More...</a><br /></td></tr>
<tr class="separator:a3a735b9285463eed8a02b8b902b32a07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a147284055bcb4ff3e2c8048b3022b104"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a147284055bcb4ff3e2c8048b3022b104">SetFar</a> (float far)</td></tr>
<tr class="memdesc:a147284055bcb4ff3e2c8048b3022b104"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the distance to the far clipping plane.  <a href="#a147284055bcb4ff3e2c8048b3022b104">More...</a><br /></td></tr>
<tr class="separator:a147284055bcb4ff3e2c8048b3022b104"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a726cc60dfc9e44f840b2af99880e0e00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a726cc60dfc9e44f840b2af99880e0e00">SetEye</a> (float x, float y, float z)</td></tr>
<tr class="memdesc:a726cc60dfc9e44f840b2af99880e0e00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the eye position.  <a href="#a726cc60dfc9e44f840b2af99880e0e00">More...</a><br /></td></tr>
<tr class="separator:a726cc60dfc9e44f840b2af99880e0e00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea368e16edee12cee5017f811b316194"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#aea368e16edee12cee5017f811b316194">SetLookAt</a> (float x, float y, float z)</td></tr>
<tr class="memdesc:aea368e16edee12cee5017f811b316194"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the look-at point.  <a href="#aea368e16edee12cee5017f811b316194">More...</a><br /></td></tr>
<tr class="separator:aea368e16edee12cee5017f811b316194"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62c720c85eeef476422bd7c8dbd9a710"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a62c720c85eeef476422bd7c8dbd9a710">SetRotation</a> (float yaw, float pitch, float roll)</td></tr>
<tr class="memdesc:a62c720c85eeef476422bd7c8dbd9a710"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the yaw/pitch/roll angles, in radians.  <a href="#a62c720c85eeef476422bd7c8dbd9a710">More...</a><br /></td></tr>
<tr class="separator:a62c720c85eeef476422bd7c8dbd9a710"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a734435b2f59ab105fe94ab77b82a3d85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a734435b2f59ab105fe94ab77b82a3d85">SetYaw</a> (float yaw)</td></tr>
<tr class="memdesc:a734435b2f59ab105fe94ab77b82a3d85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the yaw angle, in radians.  <a href="#a734435b2f59ab105fe94ab77b82a3d85">More...</a><br /></td></tr>
<tr class="separator:a734435b2f59ab105fe94ab77b82a3d85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f4db9c7aeb9c87b9e7b8f3f2ad80b91"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a9f4db9c7aeb9c87b9e7b8f3f2ad80b91">SetPitch</a> (float pitch)</td></tr>
<tr class="memdesc:a9f4db9c7aeb9c87b9e7b8f3f2ad80b91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the pitch angle, in radians.  <a href="#a9f4db9c7aeb9c87b9e7b8f3f2ad80b91">More...</a><br /></td></tr>
<tr class="separator:a9f4db9c7aeb9c87b9e7b8f3f2ad80b91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae218a6c23442cec2e1ec00e69636ecfc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#ae218a6c23442cec2e1ec00e69636ecfc">SetRoll</a> (float roll)</td></tr>
<tr class="memdesc:ae218a6c23442cec2e1ec00e69636ecfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the roll angle, in radians.  <a href="#ae218a6c23442cec2e1ec00e69636ecfc">More...</a><br /></td></tr>
<tr class="separator:ae218a6c23442cec2e1ec00e69636ecfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58f9840ebf78940daff3271506660a43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a58f9840ebf78940daff3271506660a43">SetMovementSpeed</a> (float speed)</td></tr>
<tr class="memdesc:a58f9840ebf78940daff3271506660a43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the movement speed (in world units)  <a href="#a58f9840ebf78940daff3271506660a43">More...</a><br /></td></tr>
<tr class="separator:a58f9840ebf78940daff3271506660a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad41d546593fd4db98970c184dae165dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#ad41d546593fd4db98970c184dae165dc">SetMovementEnabled</a> (bool enabled)</td></tr>
<tr class="memdesc:ad41d546593fd4db98970c184dae165dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable movement from user input.  <a href="#ad41d546593fd4db98970c184dae165dc">More...</a><br /></td></tr>
<tr class="separator:ad41d546593fd4db98970c184dae165dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a501f30aa5dbfd57efde333c6d98f22cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a501f30aa5dbfd57efde333c6d98f22cf">StoreDefaults</a> ()</td></tr>
<tr class="memdesc:a501f30aa5dbfd57efde333c6d98f22cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the current configuration as defaults.  <a href="#a501f30aa5dbfd57efde333c6d98f22cf">More...</a><br /></td></tr>
<tr class="separator:a501f30aa5dbfd57efde333c6d98f22cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bf5909cb5b66ad34df86a0e85cfdf0c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a0bf5909cb5b66ad34df86a0e85cfdf0c">Reset</a> ()</td></tr>
<tr class="memdesc:a0bf5909cb5b66ad34df86a0e85cfdf0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset camera orientation to defaults.  <a href="#a0bf5909cb5b66ad34df86a0e85cfdf0c">More...</a><br /></td></tr>
<tr class="separator:a0bf5909cb5b66ad34df86a0e85cfdf0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab023571c5b0b7d3927851cc0a4389b09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#ab023571c5b0b7d3927851cc0a4389b09">RegisterEvents</a> (uint32_t display=0)</td></tr>
<tr class="memdesc:ab023571c5b0b7d3927851cc0a4389b09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register to recieve input events (enable movement)  <a href="#ab023571c5b0b7d3927851cc0a4389b09">More...</a><br /></td></tr>
<tr class="separator:ab023571c5b0b7d3927851cc0a4389b09"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a33384be13e585e4461af7f715a36668f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classglCamera.html">glCamera</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#a33384be13e585e4461af7f715a36668f">Create</a> (<a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a> mode, int registerEvents=0)</td></tr>
<tr class="memdesc:a33384be13e585e4461af7f715a36668f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create OpenGL camera object with the specified CameraMode.  <a href="#a33384be13e585e4461af7f715a36668f">More...</a><br /></td></tr>
<tr class="separator:a33384be13e585e4461af7f715a36668f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8a3698e1f1025aec18598cde2c5a74f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classglCamera.html">glCamera</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classglCamera.html#aa8a3698e1f1025aec18598cde2c5a74f">Create</a> (int registerEvents=0)</td></tr>
<tr class="memdesc:aa8a3698e1f1025aec18598cde2c5a74f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create OpenGL camera object.  <a href="#aa8a3698e1f1025aec18598cde2c5a74f">More...</a><br /></td></tr>
<tr class="separator:aa8a3698e1f1025aec18598cde2c5a74f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>OpenGL perspective camera supporting Look-At, Yaw/Pitch/Roll, and Ortho modes. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a29491e624fc3c4bd85def74db643f273"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29491e624fc3c4bd85def74db643f273">&#9670;&nbsp;</a></span>CameraMode</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">glCamera::CameraMode</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enum specifying the camera mode. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a29491e624fc3c4bd85def74db643f273a8745252e4ff0a3a08635c0f37a71e806"></a>LookAt&#160;</td><td class="fielddoc"><p>LookAt (orbit) </p>
</td></tr>
<tr><td class="fieldname"><a id="a29491e624fc3c4bd85def74db643f273a8ea08fddd9bed660854bb9e6942a75c0"></a>YawPitchRoll&#160;</td><td class="fielddoc"><p>YawPitchRoll (first person. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29491e624fc3c4bd85def74db643f273aa71515b38b05be5b8baa702c27da3f1f"></a>Ortho&#160;</td><td class="fielddoc"><p>Ortho (2D) </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4f5818f0d43ab3d97a316d4f5834fb63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f5818f0d43ab3d97a316d4f5834fb63">&#9670;&nbsp;</a></span>~glCamera()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">glCamera::~glCamera </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Free the camera. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a71bf818dcda3515efe0632ed3144882e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71bf818dcda3515efe0632ed3144882e">&#9670;&nbsp;</a></span>Activate() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::Activate </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Activate GL_PROJECTION and GL_MODELVIEW matrices. </p>

</div>
</div>
<a id="a45083bf2dbd5cde15b36612a1a20d10c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45083bf2dbd5cde15b36612a1a20d10c">&#9670;&nbsp;</a></span>Activate() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::Activate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Activate GL_PROJECTION and GL_MODELVIEW matrices. </p>

</div>
</div>
<a id="a33384be13e585e4461af7f715a36668f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a33384be13e585e4461af7f715a36668f">&#9670;&nbsp;</a></span>Create() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classglCamera.html">glCamera</a>* glCamera::Create </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a>&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>registerEvents</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create OpenGL camera object with the specified CameraMode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">registerEvents</td><td>the ID of the <a class="el" href="classglDisplay.html" title="OpenGL display window and image/video renderer with CUDA interoperability. ">glDisplay</a> window to register with to recieve input events (for moving the camera around with keyboard/mouse), or -1 to not register for input events. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aa8a3698e1f1025aec18598cde2c5a74f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8a3698e1f1025aec18598cde2c5a74f">&#9670;&nbsp;</a></span>Create() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classglCamera.html">glCamera</a>* glCamera::Create </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>registerEvents</em> = <code>0</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create OpenGL camera object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">registerEvents</td><td>the ID of the <a class="el" href="classglDisplay.html" title="OpenGL display window and image/video renderer with CUDA interoperability. ">glDisplay</a> window to register with to recieve input events (for moving the camera around with keyboard/mouse), or -1 to not register for input events. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a57ff1e828c714a95750cd89c167e5d6b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57ff1e828c714a95750cd89c167e5d6b">&#9670;&nbsp;</a></span>Deactivate()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::Deactivate </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Restore previous GL_PROJECTION and GL_MODELVIEW matrices. </p>

</div>
</div>
<a id="ac8ab4555df063460fba8876dadd4062e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8ab4555df063460fba8876dadd4062e">&#9670;&nbsp;</a></span>GetCameraMode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a> glCamera::GetCameraMode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the camera mode. </p>

</div>
</div>
<a id="ab023571c5b0b7d3927851cc0a4389b09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab023571c5b0b7d3927851cc0a4389b09">&#9670;&nbsp;</a></span>RegisterEvents()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::RegisterEvents </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>display</em> = <code>0</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Register to recieve input events (enable movement) </p>

</div>
</div>
<a id="a0bf5909cb5b66ad34df86a0e85cfdf0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bf5909cb5b66ad34df86a0e85cfdf0c">&#9670;&nbsp;</a></span>Reset()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::Reset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reset camera orientation to defaults. </p>

</div>
</div>
<a id="a347c1ccc0ad3315d4da0702a2faf09f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a347c1ccc0ad3315d4da0702a2faf09f6">&#9670;&nbsp;</a></span>SetCameraMode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetCameraMode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classglCamera.html#a29491e624fc3c4bd85def74db643f273">CameraMode</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the camera mode. </p>

</div>
</div>
<a id="a852623aaf193398d25db0a0e9a4dc629"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a852623aaf193398d25db0a0e9a4dc629">&#9670;&nbsp;</a></span>SetClippingPlane()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetClippingPlane </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>near</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>far</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the near/far z-clipping plane. </p>

</div>
</div>
<a id="a726cc60dfc9e44f840b2af99880e0e00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a726cc60dfc9e44f840b2af99880e0e00">&#9670;&nbsp;</a></span>SetEye()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetEye </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the eye position. </p>

</div>
</div>
<a id="a147284055bcb4ff3e2c8048b3022b104"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a147284055bcb4ff3e2c8048b3022b104">&#9670;&nbsp;</a></span>SetFar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetFar </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>far</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the distance to the far clipping plane. </p>

</div>
</div>
<a id="af47b7686cf77efa848eb434cfa3fd321"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af47b7686cf77efa848eb434cfa3fd321">&#9670;&nbsp;</a></span>SetFOV()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetFOV </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>fov</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the field of view (FOV), in degrees. </p>

</div>
</div>
<a id="aea368e16edee12cee5017f811b316194"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea368e16edee12cee5017f811b316194">&#9670;&nbsp;</a></span>SetLookAt()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetLookAt </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>z</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the look-at point. </p>

</div>
</div>
<a id="ad41d546593fd4db98970c184dae165dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad41d546593fd4db98970c184dae165dc">&#9670;&nbsp;</a></span>SetMovementEnabled()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetMovementEnabled </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enabled</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enable or disable movement from user input. </p>

</div>
</div>
<a id="a58f9840ebf78940daff3271506660a43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58f9840ebf78940daff3271506660a43">&#9670;&nbsp;</a></span>SetMovementSpeed()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetMovementSpeed </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the movement speed (in world units) </p>

</div>
</div>
<a id="a3a735b9285463eed8a02b8b902b32a07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a735b9285463eed8a02b8b902b32a07">&#9670;&nbsp;</a></span>SetNear()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetNear </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>near</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the distance to the near clipping plane. </p>

</div>
</div>
<a id="a9f4db9c7aeb9c87b9e7b8f3f2ad80b91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f4db9c7aeb9c87b9e7b8f3f2ad80b91">&#9670;&nbsp;</a></span>SetPitch()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetPitch </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>pitch</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the pitch angle, in radians. </p>

</div>
</div>
<a id="ae218a6c23442cec2e1ec00e69636ecfc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae218a6c23442cec2e1ec00e69636ecfc">&#9670;&nbsp;</a></span>SetRoll()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetRoll </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>roll</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the roll angle, in radians. </p>

</div>
</div>
<a id="a62c720c85eeef476422bd7c8dbd9a710"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62c720c85eeef476422bd7c8dbd9a710">&#9670;&nbsp;</a></span>SetRotation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetRotation </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>yaw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>pitch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>roll</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the yaw/pitch/roll angles, in radians. </p>

</div>
</div>
<a id="a734435b2f59ab105fe94ab77b82a3d85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a734435b2f59ab105fe94ab77b82a3d85">&#9670;&nbsp;</a></span>SetYaw()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::SetYaw </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>yaw</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the yaw angle, in radians. </p>

</div>
</div>
<a id="a501f30aa5dbfd57efde333c6d98f22cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a501f30aa5dbfd57efde333c6d98f22cf">&#9670;&nbsp;</a></span>StoreDefaults()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void glCamera::StoreDefaults </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Store the current configuration as defaults. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>jetson-utils/<a class="el" href="glCamera_8h_source.html">glCamera.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classglCamera.html">glCamera</a></li>
    <li class="footer">Generated on Tue Jul 14 2020 21:59:35 for Jetson Inference by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
